# ‘r’：只读（缺省。如果文件不存在，则抛出错误）
# ‘w’：只写（如果文件不存在，则自动创建文件）
# ‘a’：附加到文件末尾
# ‘r+’：读写
# 可以省略，省略则为r

# 写
f = open('text.txt', 'a')
f.write('你好hhh')
f.close()

# 读
# 文件对象.read(num)
# num表示要从文件中读取的数据的长度，如果没有传入num，那么就表示读取文件中所有的数据。 换行\n占一个长度
f = open('text.txt')
# 每读取一次文件指针往后移指定位数
print(f.read(2))  # 你好
print(f.read(2))  # hh
f.close()

# readlines可以按照行的方式把整个文件中的内容进行一次性读取，并且返回的是一个列表，其中每一行的数据为一个元素。
f = open('text.txt')
print(f.readlines())
f.close()

# readline()—次读取一行内容。
f = open('text.txt')
print(f.readline())
print(f.readline())
print(f.readline())
f.close()

# 文件对象.seek(偏移量(单位是字节)，起始位置) 中文占用2个字节
# 起始位置: 0∶文件开头 1∶当前位置. 2:文件结尾
f = open('text.txt')
f.seek(2, 0)
print(f.read())
f.close()


f = open('text.txt', 'rb')
print(f.read())
f.close()